/**
 * 
 */
package com.dhcc.DRGsHosp.application;

import java.util.List;
import java.util.Map;

import com.dhcc.DRGsHosp.core.domain.DictionaryData;
import com.dhcc.DRGsHosp.core.domain.XmlStructure;

/**
 * 
 * @title		:XmlStructureApplication.java
 * @description	:
 * @author		:mazhaoyan
 * @date		:2017年4月18日
 * @version     :1.0
 * @copyright   :DHCC 2013-2014
 */
public interface XmlStructureApplication {
	/**
	 * 
	 * @methodname    :getTableStructure
	 * @description   : 获取表结构
	 * @param         :
	 * @author        :mazhaoyan
	 * @return        :
	 * @date          :2017年4月18日
	 */
	public List<Map<String,Object>> getTableStructure(String tableName);
	
	/**
	 * 
	 * @Title: creatXmlStructure
	 * @author:LiQingYang   
	 * @Description: TODO(这里用一句话描述这个方法的作用)   
	 * @param: @param xmlStructure      
	 * @return: void      
	 * @throws
	 * @date:2017年4月26日 上午11:31:35
	 */
	public void creatXmlStructure(XmlStructure xmlStructure); 
	
	/**
	 * 
	 * @Title: getXmlStructureByTable
	 * @author:LiQingYang   
	 * @Description: TODO(这里用一句话描述这个方法的作用)   
	 * @param: @param tableCode
	 * @param: @return      
	 * @return: List<Object[]>      
	 * @throws
	 * @date:2017年4月26日 下午4:12:02
	 */
	public List<Object[]> getXmlStructureByParam(String templateType,String tableCode,String pType,String parentId);
	/**
	 * 
	 *  getXmlStructureByXpath.  
	 *  @Description：获取以xpath 开头的节点集合
	 *  @Author mazhaoyan
	 *  @param tableCode
	 *  @param xpath
	 *  @return 
	 *  @Date:2017年8月1日上午9:26:03
	 */
	public List<Object[]> getXmlStructureByXpath(String tableCode,String xpath);
	
	/**
	 * 
	 * @Title: nodeInfoRemove
	 * @author:LiQingYang   
	 * @Description: TODO(这里用一句话描述这个方法的作用)   
	 * @param: @param treeId      
	 * @return: void      
	 * @throws
	 * @date:2017年5月5日 下午3:16:17
	 */
	public void nodeInfoRemove(String treeId);
	
	/**
	 * 
	 * @Title: getNodeInfoByTreeId
	 * @author:LiQingYang   
	 * @Description: TODO(这里用一句话描述这个方法的作用)   
	 * @param: @param treeId
	 * @param: @return      
	 * @return: int      
	 * @throws
	 * @date:2017年5月8日 下午2:01:14
	 */
	public int getNodeInfoByNodeId(String treeId); 
	/**
	 * Description :获取xml配置表信息 
	 * date: 2017年5月12日 下午3:50:56  
	 * @author ShaozhiYuan
	 * @version V1.0 DHC
	 */
	public List<Object[]> findXMLTable(String templateType);

	/**  
	 *  getXmlStructureOrderByLD.  
	 *  @Description：按照级别降序 查询特定模版的 字段路径数据
	 *  @Author mazhaoyan
	 *  @param string
	 *  @param string2
	 *  @return 
	 *  @Date:2017年10月16日下午8:55:34   
	 */
	public List<Object[]> getXmlStructureOrderByLD(String templateType, String tableCode);
	/**
	 *  根据节点配置路径查询节点信息
	 *  findNodeConfigInfo.  
	 *  @Description：
	 *  @Author ChenHanlin
	 *  @param pathCode
	 *  @return 
	 *  @Date:2017年11月29日下午3:06:25
	 */
	public List<Map<String, Object>> findNodeConfigInfoByPath(String pathCode);
	
}
